# coding=utf-8
#整个项目的配置


class Config:
    # 配置数据库和SQLAlchemy
    HOSTNAME = '127.0.0.1'
    PORT = '3306'
    DATABASE = 'financial'
    USERNAME = 'root'
    PASSWORD = 'root'

    DB_URI = "mysql+pymysql://{username}:{password}@{host}:{port}/{db}?charset=utf8".format(username=USERNAME,
                                                                                            password=PASSWORD,
                                                                                            host=HOSTNAME, port=PORT,
                                                                                db=DATABASE)
    SQLALCHEMY_DATABASE_URI = DB_URI #数据库的配置
    SQLALCHEMY_TRACK_MODIFICATIONS = False  # 不需要跟踪数据的修改

    # 日志的配置
    LOGGING_LEVEL = 'DEBUG' #日志输出的级别
    LOGGING_FILE_DIR = 'logs/' #日志存放的位置
    LOGGING_FILE_MAX_BYTES = 300 * 1024 * 1024 #日志的大小
    LOGGING_FILE_BACKUP = 100 #在当前目录中最多存放几个目录，如果想所有的文件的存起来的话，这里就写0就行（换句话说就是全部文件都不做删除）

    # 限流器的redis数据库配置
    RATELIMIT_STORAGE_URL = 'redis://127.0.0.1:6379/0'
    # 限制策略：移动窗口：时间窗口会自动变化
    RATELIMIT_STRATEGY = 'moving-window'

    REDIS_URL = "redis://127.0.0.1:6379/1"

    # 用户头像图片的保持目录配置    #r取消字符串中的转义字符
    AVATAR_DIR = r'D:\程序\MSB-Financlal\financial\static\avatar'

# 开发环境下的配置信息
class DevelopmentConfig(Config):
    DEBUG = True
    SQLALCHEMY_ECHO = True  # 打印sql

# 生产环境中的配置信息
class ProductConfig(Config):
    pass











